package com.weixing.mall.provider.model.vo.report.finance;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.weixing.mall.provider.api.model.enums.AgentLevelEnum;
import com.weixing.mall.provider.model.enums.AgentLogTypeEnum;
import com.weixing.mall.provider.support.excel.EnumConverter.AgentLogTypeConverter;
import com.weixing.mall.provider.support.excel.EnumConverter.OrderTypeConverter;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author jzy
 * @date 2020/5/31
 */
@Data
@Accessors(chain = true)
@ApiModel(value="FinanceAgentFeeDetailVo", description="财务部-代理收费报表详细")
public class FinanceAgentFeeDetailVo {
    @ApiModelProperty(value = "所属客服Id")
    @ExcelIgnore
    private Long customerId;
    @ApiModelProperty(value = "代理商Id")
    @ExcelIgnore
    private Long agentId;




    @ApiModelProperty(value = "所属客服")
    @ExcelProperty("所属客服")
    private String customerName;
    @ApiModelProperty(value = "代理名称")
    @ExcelProperty("代理名称")
    private String agentName;
    @ApiModelProperty(value = "代理等级")
    @ExcelProperty("代理等级")
    private String agentLevel;
    @ApiModelProperty(value = "登录账号")
    @ExcelProperty("登录账号")
    private String mobile;
    @ApiModelProperty(value = "身份证")
    @ExcelProperty("身份证")
    private String idCard;
    @ApiModelProperty(value = "微信号")
    @ExcelProperty("微信号")
    private String wechatNum;
    @ApiModelProperty(value = "代理开始时间")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ExcelProperty("代理开始时间")
    private Date effectStart;
    @ApiModelProperty(value = "代理到期时间")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ExcelProperty("代理到期时间")
    private Date effectEnd;
    @ApiModelProperty(value = "类型")
    @ExcelProperty(value = "类型",converter = AgentLogTypeConverter.class)
    private AgentLogTypeEnum logType;
    @ApiModelProperty(value = "对应金额")
    @ExcelProperty("对应金额")
    private BigDecimal amount;
    @ApiModelProperty(value = "操作人")
    @ExcelProperty("操作人")
    private String operatorName;
    @ApiModelProperty(value = "操作时间")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat("yyyy-MM-dd HH:mm:ss")
    @ExcelProperty("操作时间")
    private Date createdTime;
}
